#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1


# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

CFLAGS = -Wall -g

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif

# Only enable async mode on Linux targets
ifeq ($(DEB_BUILD_ARCH_OS),linux)
  confflags = --with-async-mode
else
  confflags =
endif

# Available python versions
PYVERS = $(shell pyversions -v -r debian/control)

patch-stamp:
	QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
	touch $@

build: build-stamp-main $(PYVERS:%=build-stamp-python-%)

build-stamp-main: patch-stamp
	dh_testdir
	mkdir $(CURDIR)/build-main
	cd $(CURDIR)/build-main && \
		CFLAGS="$(CFLAGS)" ../configure $(confflags) \
			--host=$(DEB_HOST_GNU_TYPE) \
			--build=$(DEB_BUILD_GNU_TYPE) \
			--prefix=/usr \
			--mandir=\$${prefix}/share/man \
			--infodir=\$${prefix}/share/info \
			--enable-libftdipp \
			--disable-python-binding
	cd $(CURDIR)/build-main && \
		$(MAKE)
	touch $@

build-stamp-python-%: patch-stamp
	dh_testdir
	mkdir $(CURDIR)/build-python$*
	cd $(CURDIR)/build-python$* && \
		CFLAGS="$(CFLAGS)" PYTHON="python$*" ../configure $(confflags) \
			--host=$(DEB_HOST_GNU_TYPE) \
			--build=$(DEB_BUILD_GNU_TYPE) \
			--prefix=/usr \
			--mandir=\$${prefix}/share/man \
			--infodir=\$${prefix}/share/info \
			--disable-libftdipp \
			--enable-python-binding
	cd $(CURDIR)/build-python$* && \
		$(MAKE)
	touch $@

install-stamp-common:
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	touch $@

install: install-stamp-main $(PYVERS:%=install-stamp-python-%)
	dh_install --sourcedir=debian/tmp
	touch $@
	
install-stamp-main: build-stamp-main install-stamp-common
	cd build-main && \
		$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/main
	touch $@

install-stamp-python-%: build-stamp-python-% install-stamp-common
	cd build-python$* && \
		$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/python$*
	touch $@

clean:
	dh_testdir
	dh_testroot
	rm -rf build-main build-python*
	QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2
	rm -rf .pc	
	rm -f *-stamp*
	dh_clean 

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs ChangeLog
	dh_installdocs
	dh_installexamples
	dh_installman
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_pysupport
	dh_makeshlibs -V
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install 
